1. Technical Field
The present disclosure relates to a cache arrangement.
2. Discussion of the Related Art
Data caching is a technique which exploits a property of data access known as temporal locality. Temporal locality means that data that has been accessed recently is the data most likely to be accessed again in the near future. Data caching involves storing or caching a copy of recently accessed data in a cache memory that is accessible more quickly and efficiently than the primary memory from which the data was originally obtained. If the same data is requested again in the future, the cached copy of the data can be retrieved from the cache memory rather than retrieving the original data from the primary memory. As the cache memory can be accessed more quickly than the primary memory, this can increase the overall speed of data retrieval.
Some systems employ a technique known as data pre-fetching in which data may be retrieved, possibly speculatively, before it is actually needed in order to increase the overall speed of memory access. Data pre-fetches may be regarded as being speculative in the sense that the pre-fetched data may not eventually be required.
The pre-fetched data is stored in the cache and is treated as cached data. In this way, when the pre-fetched data is actually requested, the cache will be checked to determine whether the requested data is located there.
In some systems, an interconnect may be provided between the cache memory and the primary memory. If the interconnect is limited or shared with the number of resources, pre-fetch requests may contribute to latency to this interconnect. This may result in the latency in the overall system being increased.